The NBA playoffs are defined by high-stakes matchups, rapidly shifting strategies, and the constant search for competitive advantages. As modern basketball increasingly emphasizes spacing and perimeter shooting, an important analytical question emerges: To what extent does three-point shooting influence playoff success compared to two-point efficiency? In this report, we analyze team-level and player-level data from the 2024–2025 NBA playoffs to investigate how shooting performance across different zones—such as corner threes, above-the-break threes, and shots in the paint—relates to win percentage and overall postseason success. We aim to determine whether three-point percentage is a stronger predictor of playoff performance than two-point percentage, and which specific shooting areas contribute most to winning. We theorize that three-point efficiency is a significantly stronger predictor of playoff success than two-point efficiency in modern day basketball and that specific high-value shooting zones—particularly corner and above-the-break threes—provide meaningful competitive advantages for teams in the 2024–2025 NBA playoffs.
The two data sets being analyzed are from the official NBA Statistics website, in which data has been meticulously collected over the past several decades. The data is exclusively limited to playoff data, to disregard any intentional loosing for future draft picks, or other reasons, that teams my do in the regular season. There are two data sets that are being analyzed in this report, individual player shooting data that will be referred to as shooting_data, and team performance data that will be referred to as team_data. Both data sets are kept to strictly the 2024-25 Playoff season.
The shooting_data section looks at all players individual shooting statistics, averaged out per game in the playoffs. The columns include the player’s name, team, age, and shooting statistics. Each section of shooting statistics comes with three areas: field goals made (FGM), field goals attempted (FGA), and field goal percentage (FG%). The data set contains these statistics for shots taken in different areas of the court. Areas: - Restricted Area: Right under the basket, typically layups and dunks. Must be taken in the semi circle painted on the court under the basket. - In the Paint (Non - RA): These are shots taken in the painted region of the basketball court, below the free throw line, not including Restricted Area shots. These can possibly be dunks or layups if a player jumps or reaches far enough. - Mid-Range: These are shots taken inside of the three point line that do not fall under the previous two categories. - Left-Corner 3: Shots taken beyond the 3 point line in the left corner of the court. - Right-Corner 3: Shots taken beyond the 3 point line in the right corner of the court. - Corner 3: An aggregate of both Left and Right corner three point shots. Above the Break 3: Shots taken beyond the 3 point line that do not consider corner shots, they are taken either directly in-line with the basket or at a partial angle. - 3 and 2: Adjusted fields to get aggregate values for 2 and 3 point shooting.
The team_data section looks at each team’s performance in the playoffs, and maintains a team column with each Team’s abbreviated name. The columns that are being used in this analysis are WIN%, which is the winning percentage of a team, directly correlating to their success in the playoffs. There are also fields FGM, FGA, FG%, and 3PM, 3PA, 3P% which as in the shooting_data section look into team average shooting statistics per game, at the 2 and 3 point shot levels.
The data being analyzed does leave out certain players from teams that did not play impact, or any minutes. This is to remove players with no shooting data, or just one or two missed shots at the end of an already decided game. There are some unusualities in the data, in which NBA 3 point shooting has risen greatly over the last decade, teams simply put up more 3’s, which has been noted as the key strategy of the 2023-24 NBA Playoff Championship Boston Celtics. In addition, there may be a correlation between 2 and 3 point shooting, and certain team strategies may have affected this. Shai Gilgeous-Alexander, the finals MVP and star play for the Championship winning Oklahoma City Thunder is known for driving inside the paint and attempting to draw fouls, for free shots and free throws at a rate higher than many other players. This strategy, if a foul is called, allows the player to either shoot two free throws for 2 points, or (if they make the basket), it counts and they can shoot one additional free throw, gaining the same amount of points as a 3-point shot would have made. Strategies to raise the expected value on any given play such as this are changing yearly in the NBA, and thus 3-point shooting is on the rise. Other discrepancies note that “free shots”, such as break away lay-ups and dunks (usually in the Restricted Area) are always two points, and with no defense are almost certain to go in the basket. These kinds of shots can swing momentum, and teams who accumulate them are essentially gaining free points throughout the game. As a result, data may show that this shot is influential in game outcome, while it is more of a defensive outcome from a player stealing a ball, rather than an offensive shot.
In the following of this report, we will delve into the specifics of this data set, analyzing how 3-point shooting affects a given team’s chances to win in the 2024-25 NBA Playoffs. The analysis will inquire about the proportion of 3 vs 2 point shots, and how they affect a team’s winning percentage. In addition we will look at specific 3-point shooting data, and determine where the most affective areas of the court are for teams winning this year. We will look at the analysis of this data to determine whether 3-point shooting is as decisive of a factor towards winning in the NBA playoffs as popular media makes it out to be.
## Analysis - Team 3PT Shooting by Zone
# Aggregate player-level data to team-level averages for 3PT zones
team_zone_avgs <- nba_24_25_playoff_shooting_data %>%
group_by(Team) %>%
summarise(
`Left Corner 3 FG%` = mean(as.numeric(`Left Corner 3. FG%`), na.rm = TRUE),
`Right Corner 3 FG%` = mean(as.numeric(`Right Corner 3. FG%`), na.rm = TRUE),
`Above the Break 3 FG%` = mean(`Above the Break 3. FG%`, na.rm = TRUE)
) %>%
pivot_longer(
cols = c(`Left Corner 3 FG%`, `Right Corner 3 FG%`, `Above the Break 3 FG%`),
names_to = "Zone",
values_to = "FG_Percent"
)
## Warning: There were 8 warnings in `summarise()`.
## The first warning was:
## ℹ In argument: `Left Corner 3 FG% = mean(as.numeric(`Left Corner 3. FG%`),
## na.rm = TRUE)`.
## ℹ In group 8: `Team = "LAC"`.
## Caused by warning in `mean()`:
## ! NAs introduced by coercion
## ℹ Run `dplyr::last_dplyr_warnings()` to see the 7 remaining warnings.
This chunk of code is aggregating player-level three-point shooting data into team-level averages for the 2024–2025 NBA playoffs. Because our goal is to analyze how three-point shooting affects team win percentage and playoff success, we need a single shooting percentage per team per zone, rather than having multiple rows per player.
team_zone_avgs <- team_zone_avgs %>%
left_join(nba_24_25_playoff_team_data %>% select(Team, `WIN%`), by = "Team")
# Scatter plot with size proportional to WIN%
ggplot(team_zone_avgs, aes(x = Zone, y = FG_Percent, color = Team, size = `WIN%`)) +
geom_point() +
geom_text_repel(aes(label = Team), vjust = -0.5, size = 3, show.legend = FALSE) +
labs(
title = "NBA 2024-2025 Playoff Teams: 3PT FG% by Zone with WIN%",
x = "3-Point Zone",
y = "FG%",
size = "Win %"
) +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
# This code builds on the previous team-level aggregation of three-point shooting percentages and creates a scatter plot visualizing 3PT shooting performance by zone for each playoff team, while also showing team success (win percentage) as the size of the points.((0.2%-Smallest sized point), (0.4% - Medium sized point) (0.6%-Large sized point))
After these graphing results we infer that the right corner three should be the strongest indicator to a teams success as both OKC and IND made it to the finals and both rank the highest on the right corner three FG%.
# Make sure team averages and WIN% are joined
team_zone_avgs <- nba_24_25_playoff_shooting_data %>%
group_by(Team) %>%
summarise(
Left_Corner_3_FG = mean(as.numeric(`Left Corner 3. FG%`), na.rm = TRUE),
Right_Corner_3_FG = mean(as.numeric(`Right Corner 3. FG%`), na.rm = TRUE),
Above_the_Break_3_FG = mean(`Above the Break 3. FG%`, na.rm = TRUE)
) %>%
left_join(nba_24_25_playoff_team_data %>% select(Team, `WIN%`), by = "Team")
## Warning: There were 8 warnings in `summarise()`.
## The first warning was:
## ℹ In argument: `Left_Corner_3_FG = mean(as.numeric(`Left Corner 3. FG%`), na.rm
## = TRUE)`.
## ℹ In group 8: `Team = "LAC"`.
## Caused by warning in `mean()`:
## ! NAs introduced by coercion
## ℹ Run `dplyr::last_dplyr_warnings()` to see the 7 remaining warnings.
# Correlation tests for each zone
cor_left <- cor.test(team_zone_avgs$Left_Corner_3_FG, team_zone_avgs$`WIN%`)
cor_right <- cor.test(team_zone_avgs$Right_Corner_3_FG, team_zone_avgs$`WIN%`)
cor_above <- cor.test(team_zone_avgs$Above_the_Break_3_FG, team_zone_avgs$`WIN%`)
cor_left
##
## Pearson's product-moment correlation
##
## data: team_zone_avgs$Left_Corner_3_FG and team_zone_avgs$`WIN%`
## t = 1.9832, df = 14, p-value = 0.06732
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## -0.03567938 0.78238802
## sample estimates:
## cor
## 0.4683087
cor_right
##
## Pearson's product-moment correlation
##
## data: team_zone_avgs$Right_Corner_3_FG and team_zone_avgs$`WIN%`
## t = 1.8329, df = 14, p-value = 0.08817
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## -0.07135323 0.76811658
## sample estimates:
## cor
## 0.4399119
cor_above
##
## Pearson's product-moment correlation
##
## data: team_zone_avgs$Above_the_Break_3_FG and team_zone_avgs$`WIN%`
## t = 2.2866, df = 14, p-value = 0.03831
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## 0.0347359 0.8082434
## sample estimates:
## cor
## 0.5214623
#put data into SharedData so that graph can be interactive
nba_shared_data <- SharedData$new(nba_sum, key = ~Team, group = "NBA_Data")
nba_3v2FGM_plot <- nba_shared_data %>%
ggplot(aes(x = `2 FGM`, y = `3 FGM`)) +
geom_point(size = 3, aes(color = `WIN%`, text = paste("Team:", Team, "\nWin %:",`WIN%`, "\nPlayer:", Player))) +
scale_color_gradientn(
colors = c("blue", "dodgerblue","deepskyblue", "white", "orange", "red", "darkred")
) +
geom_vline(xintercept = mean(nba_sum$`2 FGM`), linetype = "dashed", alpha = 0.5) +
geom_hline(yintercept = mean(nba_sum$`3 FGM`), linetype = "dashed", alpha = 0.5) +
labs(
y = "3-Point FG Made", x = "2-Point FG Made", title = "3 vs 2 Point Field Goals Made, Win% Gradient in 24-25 Playoffs"
)
## Warning in geom_point(size = 3, aes(color = `WIN%`, text = paste("Team:", :
## Ignoring unknown aesthetics: text
interactive <- ggplotly(nba_3v2FGM_plot, tooltip = c("text", "x", "y"))
team_filter <- filter_select(
id = "team_select",
label = "Select Team:",
sharedData = nba_shared_data,
group = ~Team,
allLevels = TRUE
)
browsable(
tagList(
team_filter,
interactive
)
)
nba_24_25_playoff_team_data %>%
ggplot(aes(x = `FGM`-`3PM`, y = `3PM`)) +
geom_point(size = 3, aes(color = `WIN%`)) +
scale_color_gradientn(
colors = c("blue", "dodgerblue","deepskyblue", "white", "orange", "red", "darkred")
) +
geom_text_repel(aes(label = Team), vjust = -0.5, size = 3, show.legend = FALSE) +
geom_vline(aes(xintercept = mean(`FGM`-`3PM`)), linetype = "dashed", alpha = 0.5) +
geom_hline(aes(yintercept = mean(`3PM`)), linetype = "dashed", alpha = 0.5) +
labs(
y = "3-Point FG Made", x = "2-Point FG Made", title = "3 vs 2 Point Field Goals Made by Team in 24-25 Playoffs"
)
After these graphs we can infer that 3 point shooting alone does not directly correlate to teams achieveing a high winning percentage in the playoffs. The charts show teams are most efficient when shooting the most 2 and 3 point field goals, which makes sense at that directly means they are scoring more points throughout the game. There is definetly an appearance of teams doing well that average more 2s than the average. However, it appears there is little to no success for teams that shoot well below the average amount of 3’s in a game, while there are teams, such as the Boston Celtics (2023-24 NBA Champions), who shoot a much lower average of 2 point field goals, while being able to maintain a high winning percentage.
#Looking at the correlation between 2 and 3 point shots
cor_2v3 <- cor.test(nba_sum$`2 FGM`, nba_sum$`3 FGM`)
cor_2vWin <- cor.test(nba_sum$`2 FGM`, nba_sum$`WIN%`)
cor_3vWin <- cor.test(nba_sum$`3 FGM`, nba_sum$`WIN%`)
#Looking at the correlation between 2 and 3 point shots
cor_2v3
##
## Pearson's product-moment correlation
##
## data: nba_sum$`2 FGM` and nba_sum$`3 FGM`
## t = -1.2092, df = 94, p-value = 0.2296
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## -0.31639562 0.07867798
## sample estimates:
## cor
## -0.1237601
#Looking at the correlation between 2 point shots and Winning
cor_2vWin
##
## Pearson's product-moment correlation
##
## data: nba_sum$`2 FGM` and nba_sum$`WIN%`
## t = 0.46152, df = 94, p-value = 0.6455
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## -0.1544095 0.2456922
## sample estimates:
## cor
## 0.04754836
#Looking at the correlation between 3 point shots and Winning
cor_3vWin
##
## Pearson's product-moment correlation
##
## data: nba_sum$`3 FGM` and nba_sum$`WIN%`
## t = 0.061819, df = 94, p-value = 0.9508
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## -0.1943584 0.2065979
## sample estimates:
## cor
## 0.006376005
cor_2vLoss <- cor.test(nba_sum$`2 FGM`, 1 - nba_sum$`WIN%`)
cor_3vLoss <- cor.test(nba_sum$`3 FGM`, 1 - nba_sum$`WIN%`)
#Looking at the correlation between 2 point shots and Loosing
cor_2vLoss
##
## Pearson's product-moment correlation
##
## data: nba_sum$`2 FGM` and 1 - nba_sum$`WIN%`
## t = -0.46152, df = 94, p-value = 0.6455
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## -0.2456922 0.1544095
## sample estimates:
## cor
## -0.04754836
#Looking at the correlation between 3 point shots and Loosing
cor_3vLoss
##
## Pearson's product-moment correlation
##
## data: nba_sum$`3 FGM` and 1 - nba_sum$`WIN%`
## t = -0.061819, df = 94, p-value = 0.9508
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## -0.2065979 0.1943584
## sample estimates:
## cor
## -0.006376005
The is a possibly non-negligible correlation received between the amount of 2 and 3 point shots in the NBA playoffs. Thus, for the most part teams tend to favor one type of shot. This can possibly affect the other correlations but for now we will continue to compute. The correlation tests actually show that making more 2 point field goals has a higher correlation to winning percentage than 3 point field goals. Inversely making more 2 point shots has a larger negative correlation on the loss % of teams as well. This data could have been slightly skewed by the winning Oklahoma City Thunder (OKC) who shot more two point shots than any other team, and teams such as the Los Angeles Lakers (LAL) and Miami Heat (MIA) who shot a large majority of their shots from the 3 point range in their short, loosing playoff stints. However, since OKC won the Championship, any many other winning teams did not fall beyond the 2-point mean, large amounts of 2-point shots seem to have a greater correlation to winning teams.
nba_summary <- nba_24_25_playoff_shooting_data %>%
group_by(Team) %>%
summarise(
total_3FGA = sum(`3 FGA`),
total_2FGA = sum(`2 FGA`),
`2FGA%`=sum(`2 FGM`)/sum(`2 FGA`)
) %>%
full_join(
nba_24_25_playoff_team_data %>% select(Team, `WIN%`),
by = "Team"
)%>%mutate(`3_2_pointDifference` = total_2FGA - total_3FGA)
nba_summary %>%
ggplot(aes(x = `3_2_pointDifference`, y = `WIN%`, color = Team)) +
geom_point(size = 3) +
labs(
x = "2pt FGA - 3pt FGA",
y = "Win Percentage",
title = "Impact of 2-pt vs 3-pt Attempts on Playoff Win %"
)
## Warning: Removed 2 rows containing missing values or values outside the scale range
## (`geom_point()`).
cor_3_2_pointDifference <- cor.test(nba_summary$`WIN%`, nba_summary$`3_2_pointDifference`)
cor_3_2_pointDifference
##
## Pearson's product-moment correlation
##
## data: nba_summary$`WIN%` and nba_summary$`3_2_pointDifference`
## t = 1.0036, df = 12, p-value = 0.3354
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## -0.2960053 0.7047960
## sample estimates:
## cor
## 0.2782791
cor_2FGA_percent_vs_Win <- cor.test(nba_summary$`WIN%`, nba_summary$`2FGA%`)
cor_2FGA_percent_vs_Win
##
## Pearson's product-moment correlation
##
## data: nba_summary$`WIN%` and nba_summary$`2FGA%`
## t = 1.0633, df = 13, p-value = 0.307
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## -0.2682643 0.6944982
## sample estimates:
## cor
## 0.2828713
While the results of the above graph may appear to show a correlation, a correlation test suggests that the difference between 2-point and 3-point attempts is not statistically correlated with win percentage. Similarly, the correlation between a team’s 2-point field goal attempt percentage (2FGA%) and win percentage is weak (r ≈ 0.28, p ≈ 0.31).
The correlations are as follows:
These results indicate that above-the-break three-point shooting efficiency is the only measure among those tested that shows a statistically significant correlation with playoff win percentage. The other shooting zones and raw field goal volumes (2-point or 3-point) do not show statistically significant relationships with team success.
Additionally, the weak correlation between 2-point and 3-point FGM suggests that while teams may favor one type of shot over another, this preference alone does not strongly predict playoff outcomes. Overall, this analysis supports the hypothesis that three-point efficiency, specifically above-the-break shooting, is more predictive of playoff success than two-point efficiency or raw shot volume.
For future research, analyzing a full regular-season dataset could reveal whether these trends extend beyond the playoffs or if other patterns emerge. Investigating factors such as shot timing—like clutch three-pointers versus routine two-point attempts—may provide deeper insights into how strategic shot selection impacts win probability in high-stakes moments.